package cn.wd.user.domain.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.*;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;
import java.util.Date;

@Data
@Accessors(chain = true)
@TableName("sys_employee")
public class Employee {
    /**
     * 主键
     */
    @TableId
    private Long id;
    /**
     * 头像
     */
    private String avatar;
    /**
     * 用户姓名
     */
    private String username;
    /**
     * 用户昵称
     */
    private String nickname;
    /**
     * 密码
     */
    @JsonIgnore
    private String password;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 年龄
     */
    private Integer age;
    /**
     * 是否管理员(0-普通用户，1-管理员)
     */
    private Boolean admin;
    /**
     * 部门id
     */
    private Long deptId;
    /**
     * 部门
     */
    @TableField(exist = false)
    private Department dept;
    /**
     * 入职时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDateTime hireDate;
}